2006年07月21日
川俣晶の縁側ソフトウェア技術雑記 total 4668 count

Visual Studio.NET 2003で作成したASP.NETプロジェクトを別マシンにファイルコピーして開くと、不正なディレクトリにDLLを生成する

Written By: 川俣 晶連絡先

 何が問題か正確には分かりませんが、とりあえずメモだけ。

現象 §

 Visual Studio.NET 2003で作成したASP.NETプロジェクトを含むソリューションのファイル一式を別マシンにファイルコピーし、ソリューションファイルを開いた。

 ビルドを行うと、本来ならプロジェクトのディレクトリの下のbinディレクトリにDLLが生成されるはずだが、これが全く別個のあり得ないディレクトリに生成された。

 その結果として、プログラムの実行が一切できない。

問題の識別方法 §

  • プロジェクトのプロパティを開く
  • 共通プロパティの全般を開く
  • プロジェクトフォルダ(グレイ表示)を見る
  • "d:\w\inet\magsite1\src\magsite\" のようにパスの区切りが全て円記号ないしバックスラッシュなら正常に動作する
  • "d:\w\inet\magsite1/src/magsite\" のようにパスの区切りにスラッシュが含まれると、DLLを生成するディレクトリを誤る

 たとえば、"d:\w\inet\magsite1/src/magsite\"の場合、DLLは"d:\w\inet\magsite1\src\magsite1\src\magsite\bin"のようなディレクトリに生成されるようです。

解決方法 §

 (確実な情報ではありません)

 ASP.NETプログラムが動作するようにIISの設定を正しく行った上で、ソリューションのファイル一式を削除し、あらためてコピーし直す。

 ……たぶん、この手順で正しく動作するようになったような気がしますが、全く確実ではありません。